La plupart des informations relatives à un compte d'utilisateur sous Ubuntu sont modifiables à partir de l'outil d'administration graphique Utilisateurs et groupes. Par exemple, le nom affiché d'un compte, son mot de passe, son numéro de téléphone ou l'emplacement de son dossier personnel peuvent être changés à travers cette interface graphique.
Toutefois, l'identifiant d'un compte (en anglais, login name) ne peut pas être modifié à travers un outil graphique. Le recours à l'outil en ligne de commande usermod est requis.
Comme tous les outils d'administration en ligne de commande, usermod est un outil puissant qui a une structure stricte. Si vous ne respectez pas cette structure, vous pouvez rendre inopérant un compte d'utilisateur.
La commande s'emploie ainsi :
administrateur@ordinateur:~$ sudo usermod --login nouvel_identifiant --home nouvel_emplacement_du_dossier_personnel --move-home identifiant_actuel
Étudions cette commande et ses options :
Des options supplémentaires pour usermod sont disponibles. Consultez le manuel utilisateur de usermod (man usermod) pour davantage d'informations.
Illustrons ces limitations par un exemple concret : dans un ordinateur, deux comptes d'utilisateurs existent : administrateur et utilisateur. Le compte d'utilisateur administrateur est le seul à disposer des droits d'administration.
utilisateur ne peut modifier l'identifiant de personne ;administrateur peut modifier l'identifiant de utilisateur ;administrateur ne peut pas modifier son propre identifiant. Pour procéder à la modification de son identifiant, il est nécessaire de passer par une session super-utilisateur (root) en mode de récupération.Robert et Denise ont un ordinateur dans lequel est installé un système Ubuntu. Le système leur a été livré ainsi :
administrateur. Le compte administrateur est le seul compte disposant des droits d'administration ;utilisateur.
Robert et Denise aimeraient que leur compte d'utilisateur ait pour identifiant leur prénom (robert et denise). De plus, ils aimeraient que leur dossier personnel soit déplacés afin qu'ils reflètent un emplacement approprié (/home/robert/ et /home/denise/). Comment procéder ?
administrateur ;administrateur@ordinateur:~$ sudo usermod --login denise --home /home/denise --move-home utilisateur
Désormais, l'identifiant de compte de Denise est denise et son dossier personnel se trouve à l'emplacement /home/denise/.
Robert ne doit pas avoir de session active en cours. Il ne peut pas modifier lui-même son identifiant de compte d'utilisateur. De plus, Denise n'est pas administratrice du système ; elle ne peut donc pas modifier l'identifiant de compte de Robert. Pour modifier l'identifiant de compte de Robert, il est nécessaire de passer par une session super-utilisateur du mode de récupération.
Ubuntu, kernel 2.6.x (recovery mode) ;root@ordinateur:~# usermod --login robert --home /home/robert --move-home administrateur
root@ordinateur:~# exit
La session super-utilisateur prend fin et le menu contextuel apparaît à nouveau ;
Désormais, l'identifiant du compte de Robert est robert et son dossier personnel se trouve à l'emplacement /home/robert/.